In Windows programming, an accelerator table allows an application to specify a list of accelerators (keyboard shortcuts) for menu items or other commands. For example, Ctrl+S is often used as a shortcut to the File→Save menu item, Ctrl+O is a common shortcut to the File→Open menu item, etc. An accelerator takes precedence over normal processing and can be a convenient way to program some event handling.
Accelerator tables are usually located in the resources section of the binary.
Each accelerator is associated with a control ID, the same kind of IDs which are assigned to buttons, combo boxes, list boxes, and also menu items. In this way, GUI objects can be created which represent the same function as an accelerator.
Since using the menus, and subsequently the mouse, is not always the best solution, it is important to provide users with the possibility to minimize usage of the mouse. For this reason showing the accelerators in menus can be useful; it informs the user that there are shortcuts, and that using the mouse is not always mandatory.